From 4c2dd05c96ab58fc9c41752ab786990b8e60b5bb Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 11 May 2004 13:44:09 +0000 Subject: [PATCH] Use GTK_SELECTION_BROWSE. 2004-05-11 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use GTK_SELECTION_BROWSE. * gtk/gtktreeview.c: Make hover selection work for GTK_SELECTION_BROWSE as well. --- ChangeLog | 8 ++++++++ ChangeLog.pre-2-10 | 8 ++++++++ ChangeLog.pre-2-6 | 8 ++++++++ ChangeLog.pre-2-8 | 8 ++++++++ gtk/gtkcombobox.c | 2 +- gtk/gtktreeview.c | 14 +++++++++----- 6 files changed, 42 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 892c4f9dab..9381c27db7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-05-11 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use + GTK_SELECTION_BROWSE. + + * gtk/gtktreeview.c: Make hover selection work for + GTK_SELECTION_BROWSE as well. + Tue May 11 00:38:25 2004 Matthias Clasen * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 892c4f9dab..9381c27db7 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +2004-05-11 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use + GTK_SELECTION_BROWSE. + + * gtk/gtktreeview.c: Make hover selection work for + GTK_SELECTION_BROWSE as well. + Tue May 11 00:38:25 2004 Matthias Clasen * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 892c4f9dab..9381c27db7 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +2004-05-11 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use + GTK_SELECTION_BROWSE. + + * gtk/gtktreeview.c: Make hover selection work for + GTK_SELECTION_BROWSE as well. + Tue May 11 00:38:25 2004 Matthias Clasen * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 892c4f9dab..9381c27db7 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +2004-05-11 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use + GTK_SELECTION_BROWSE. + + * gtk/gtktreeview.c: Make hover selection work for + GTK_SELECTION_BROWSE as well. + Tue May 11 00:38:25 2004 Matthias Clasen * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index fdb1c67535..291c46b18e 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -2241,7 +2241,7 @@ gtk_combo_box_list_setup (GtkComboBox *combo_box) combo_box->priv->tree_view = gtk_tree_view_new (); sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (combo_box->priv->tree_view)); - gtk_tree_selection_set_mode (sel, GTK_SELECTION_SINGLE); + gtk_tree_selection_set_mode (sel, GTK_SELECTION_BROWSE); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (combo_box->priv->tree_view), FALSE); gtk_tree_view_set_hover_selection (GTK_TREE_VIEW (combo_box->priv->tree_view), diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index beceae220c..86913f27ce 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -630,7 +630,9 @@ gtk_tree_view_class_init (GtkTreeViewClass *class) * * Enables of disables the hover selection mode of @tree_view. * Hover selection makes the selected row follow the pointer. - * Currently, this works only for the selection mode %GTK_SELECTION_SINGLE. + * Currently, this works only for the selection modes + * %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE. + * * This mode is primarily indended for treeviews in popups, e.g. * in #GtkComboBox or #GtkEntryCompletion. * @@ -2723,8 +2725,10 @@ prelight_or_select (GtkTreeView *tree_view, gint x, gint y) { + GtkSelectionMode mode = gtk_tree_selection_get_mode (tree_view->priv->selection); + if (tree_view->priv->hover_selection && - gtk_tree_selection_get_mode (tree_view->priv->selection) == GTK_SELECTION_SINGLE && + (mode == GTK_SELECTION_SINGLE || mode == GTK_SELECTION_BROWSE) && !(tree_view->priv->edited_column && tree_view->priv->edited_column->editable_widget)) { @@ -2744,7 +2748,7 @@ prelight_or_select (GtkTreeView *tree_view, gtk_tree_path_free (path); } } - else + else if (mode == GTK_SELECTION_SINGLE) gtk_tree_selection_unselect_all (tree_view->priv->selection); } else @@ -12262,8 +12266,8 @@ gtk_tree_view_stop_editing (GtkTreeView *tree_view, * * Enables of disables the hover selection mode of @tree_view. * Hover selection makes the selected row follow the pointer. - * Currently, this works only for the selection mode - * %GTK_SELECTION_SINGLE. + * Currently, this works only for the selection modes + * %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE. * * Since: 2.6 **/ -- 2.30.2